There are systems that can detect a failure of a communication system. In the event that one of the communication systems fails, another communication system can take over for the failed communication system. Some systems can minor every communication that is sent and then resume existing communications based on detecting a failure. However, where the failover communication system is distributed to provide a more robust solution, minoring does not work effectively due to delays in a network.
The Session Initiation Protocol (SIP) usually works in a distributed environment. Existing SIP solutions can detect a failover and redirect new SIP dialogs to the failover communication system. However, if an existing SIP dialog has already been established, with existing solutions, the existing SIP dialog will time out and fail. This problem is exacerbated further when proxy applications and Back-to-Back User Agents (B2BUAs) are inserted into the dialog to provide additional services such as enhanced caller ID or call recording. Under current solutions, if the inserted proxy application or B2BUAs fail, the existing SIP dialog also fails. Failing an existing SIP dialog is not an ideal solution. What is needed are solutions that will continue work for an established SIP dialog when the proxy application or B2BUA fails.